package aiku.numericalcontroloa.Model.Dto.EmployeeAttendance;

import aiku.numericalcontroloa.Model.Dto.PageSelect;
import aiku.numericalcontroloa.Model.Entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.Year;
import java.time.YearMonth;
import java.util.Date;

/**
 * @Author 黄广庭
 * @Date 2024/2/26 16:31
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class AttendanceDto extends PageSelect {
    String id;

    String clockinRuleId; // 关联clockin_standard表的id字段

    String employeeId; // 员工ID

    LocalDate clockingDate; // 打卡日期

    Date forenoonCheckinTime; // 上午签到时间

    Date forenoonCheckoutTime; // 上午签退时间

    Date afternoonCheckinTime; // 下午签到时间

    Date afternoonCheckoutTime; // 下午签退时间

    Date clockinTypeCheckoutTime;// 外勤出差使用时间//补丁

    BigDecimal[] position; // 接收的签到位置

    String clockinPosition; // 签到位置

    Integer forenoonStatus; // 上午出勤情况（0正常，1迟到，2早退，3旷工，4请假）

    Integer afternoonStatus; // 下午出勤情况（0正常，1迟到，2早退，3旷工，4请假）

    Integer clockinType; // 打卡类型（0普通，1外勤，2出差）

    Year year;

    YearMonth yearMonth;

    LocalDate yearMonthDay;

    String departmentId;

    String nickName;
}
